home *** CD-ROM | disk | FTP | other *** search
- /*
- * System-dependent functions.
- */
-
- #ifndef _STDDEF
- typedef int ptrdiff_t; /* result type of pointer difference */
- typedef unsigned size_t; /* type yielded by sizeof */
- typedef unsigned short wchar_t; /* wide char type */
- #define _STDDEF
- #define offsetof(ty, mem) ((int)&(((ty *)0)->mem))
- #endif _STDDEF
-
- #ifndef NULL
- #define NULL ((void *)0)
- #endif NULL
-
- extern int errno; /* system error number */
-
- #if defined(DOS)
- #ifndef _FREEMEM
- #define _FREEMEM
- struct freemem {
- unsigned long fr_dosmem;
- unsigned long fr_extmem;
- };
- #endif
- extern void getfreemem(struct freemem *);
- #endif
-
- extern int execl(char *, char *, ...);
- extern int execv(char *, char **);
- extern int execve(char *, char **, char **);
- extern int execle(char *, char *, ...);
- extern int execvp(char *, char **);
- extern int execlp(char *, char *, ...);
- extern int getpid(void);
- extern char * mktemp(char *);
- #if defined(unix) || defined(ATDOS)
- extern void sync(void);
- extern int fork(void);
- extern int wait(int *);
- extern int getuid(void);
- extern int setuid(int);
- extern int kill(int, int);
- extern int alarm(int);
- extern int pause(void);
- extern void sleep(unsigned int);
- extern int setpgrp(void);
- extern int getpgrp(void);
- #else unix
- extern int spawnl(char *, char *, ...);
- extern int spawnv(char *, char **);
- extern int spawnle(char *, char *, ...);
- extern int spawnve(char *, char **, char **);
- extern int spawnlp(char *, char *, ...);
- extern int spawnvp(char *, char **);
- #endif unix
- extern int chdir(char *);
- extern int chdrv(char *);
- extern int mkdir(char *);
- extern int rmdir(char *);
- extern char * getcwd(char *);
- extern void persist_validate(void);
- extern int persist_check(int);
- extern char * getdrv(void);
- extern char ** _getargs(char *, char *);
- extern int _argc_;
-
- #if z80 || i8086
- #define inp(p) (*(port unsigned char *)(p))
- #define outp(p,v) (*(port unsigned char *)(p) = (v))
- #if i8086
- #define inpw(p) (*(port unsigned short *)(p))
- #define outpw(p,v) (*(port unsigned short *)(p) = (v))
- #endif
- #endif
-
- extern void * sbrk(size_t);
- extern void brk(void *);
- #if _HOSTED
- struct _iob;
- extern int _pnum(unsigned long, signed char, signed char, unsigned char, unsigned char, struct _iobuf *, unsigned char);
- extern int _fnum(double, short, short, short, struct _iobuf *, short);
- #else
- extern int _pnum(unsigned long, signed char, signed char, unsigned char, unsigned char, struct __prbuf *, unsigned char);
- extern int _fnum(double, short, short, short, struct __prbuf *, short);
- #endif
-
- #if defined(ATDOS)
- extern int load_driver(char *);
- extern int send_message(unsigned short, unsigned short, unsigned long,
- unsigned long, void *, unsigned short);
- extern int get_message(unsigned short *, unsigned long *, void *,
- unsigned short *);
- #endif
-